According to the related art, technologies for performing the supply of content through a communication network are widely used. For example, PTL 1 below discloses a content streaming service system in which content requests are transmitted from a client to a server by HTTP, and the content received by the client as the response to this request is played as a stream.
A 3GPP AHS (Adaptive HTTP Streaming) is an example of such a system. It is known that according to 3GPP AHS, description information (metadata) called MPD (Media Presentation Description) is used. Content (media) attributes, playback order, and so on are written in the MPD, and are sent to the client before the streaming service or during the streaming service. Also, the client references the received MPD and determines the content to request to the server.
This MPD is written with periods (Period) representing time periods and representations (Representation) representing content information to be played during these time periods. The MPD is data such as that illustrated in FIG. 16, for example.
FIG. 16 is a diagram illustrating an example of the MPD according to the related art. The MPD in FIG. 16 begins with <Period start=“PT0S”>, includes the period (element) ending by the </Period>, begins again with the <Period start=“PT10S”>, and includes the period ending by the </Period>.
Also, three representations (elements) beginning with <Representation . . . > and ending with </Representation> are included in the period beginning with <Period start=“PT0S”>. In this way, the multiple representations included in one period represent a selection of content. That is to say, the multiple representations included in the same period indicate that any one of these may be selected for possible playback.
Also, each representation (element) may include attributes (Attribute) representing attributes of the content corresponding to the representation. Attributes that may be configured in representations may include information related to the content (particularly information related to the playback of content) such as codec, bitrate, frame rate, and resolution. Also, the client references the values of these attributes, and selects the representation.
For example, when there are multiple representations having different codecs, bitrates, frame rates, resolutions, and so on for the same video content, the client selects the representation corresponding to the codec, bitrate, frame rate, resolution, and so on that is playable on the device.
Further, according to the example in the figure, identifiers (id) for this representation and bitrate (as bandwidth in the figure) are described as attributes, but attributes are not limited to this example. Other attributes such as a MIME type (mimeType) representing playable data formats, for example, may be included.
Also, a group (group) attribute may be written to the MPD representation. The group represents different components, and though representations in the same group cannot be played back simultaneously, representations in different groups can be played back simultaneously.
This will be described with FIG. 17 as a basis. FIG. 17 is a diagram illustrating the related art, in which example MPD data including the group attribute is illustrated. According to this example, there are five representations with id=1 through 5 included in the period beginning with “PT0S”.
The group of representations with id=1 through 3 from these five representations is a group “1”, and the remaining two representations make up a group “2”. In this case, neither can the representations with id=1 through 3 belonging to the same group be played simultaneously, nor can the representations with id=4, 5 be played simultaneously. Conversely, the representations in the group “1” and the representations in the group “2” may be played simultaneously. For example, the representation with the id=1 may be played back simultaneously with the representation with the id=4 or 5.
Also, according to MPEG DASH (Dynamic Adaptive Streaming over HTTP), an extension is performed to add the representation group (RepresentationGroup) element and a subset (Subset) element to the 3GPP AHS base.
The representation group is an element enabling representations belonging to the same group to be organized and described in a high order of the representations (or in parallel). This will be described with FIG. 18 as a basis. FIG. 18 is a diagram illustrating the related art, and is an example of MPD data including the representation group element.
According to this example, two representation group (elements) beginning with <RepresentationGroup . . . > and ending with </RepresentationGroup> are included in the period beginning with “PT0S”.
Representations with id=1 through 3 are also included in a first representation group (representation group “1”). These three representations belong to the same group. Also, representations with id=4, 5 are included in a second representation group (representation group “2”). These two representations also belong to the same group.
Conversely, subsets are elements of representations in a high order (or in parallel) representing a set of groups that may be played back simultaneously. This will be described with FIG. 19 as a basis. FIG. 19 is a diagram illustrating the related art, and is an example of MPD data including the subset element.
According to this example, two subset (elements) beginning with <Subset> and ending with </Subset> are included in the period beginning with “PT0S”. Also, described within a first subset is that a group 1 and a group 2 are included in this subset. Also, described within a second subset is that the group 1 and a group 3 are included in this subset.
That is to say, according to the period beginning with “PT0S”, either the first or the second subset may be selected. Also, when the first subset is selected, any of the representations from at least either group 1 or 2 are selected. Similarly, when the second subset is selected, any of the representations from at least either group 1 or group 3 are selected.
Further, according to this example, three representation group elements “1” through “3” are described. Also, representations with id=1, 2 are included in the representation group “1”, representations with id=3, 4 are included in the representation group “2”, and a representation with an id=5 is included in the representation group “3”.
That is to say, a subset is first selected from the period beginning with “PT0S”, and then a representation group corresponding to the group specified by the selected subset is selected. Finally, at least one representation included in the selected representation group is selected. For example, when the first subset is selected, at least either the representation group “1” or “2” is selected. Also, when both of these are selected, at least one of the representations with id=1, 2, and at least one of the representations with id=3, 4 are selected.
Here, for example, when a representation of video content is included in group 1, a representation of Japanese dialogue content is included in group 2, and a representation of English dialogue content is included in group 3, the first subset as in FIG. 19 represents a Japanese version of the content (video and Japanese dialogue), and the second subset represents an English version of the content (video and English dialogue).
That is to say, in this case, content combinations of video and dialogue are restricted by subsets. Also, by selecting a subset, the language of the content may be selected. Further, the makeup of the content changes with the selection of the representations from each group specified by the selected subset.
In this way, it may be broadly said that subsets supply application level selections. Also, it may be said that representations supply device (device capabilities) level selections, and representation groups provide content level selections.